﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DAplicaciones1;


namespace interfaz
{
    public partial class FormMenu : Form
    {
        private Sistema sistema;
        public FormMenu()
        {
            sistema = Sistema.GetSistema();
            InitializeComponent();
            mostrarMenu();
        }

        private void comprarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (sistema.Tiempos.Count()>0) {

                if ((sistema.ArrGifts[0] != null) && (sistema.ArrGifts[1] != null) && (sistema.ArrGifts[2] != null))
                {
                    FormDisplayItems display = new FormDisplayItems();
                    this.Visible = false;
                    display.ShowDialog();
                   
                }
               else
                MessageBox.Show("No existen gifts definidos, contactese con el administrador", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
            else
                MessageBox.Show("No existen tiempos de entrega definidos, contactese con el administrador", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            

        }

        private void mantenimientoDeItemsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            FormItem crear = new FormItem();
            this.Visible = false;
            crear.ShowDialog();
            
            
            
        }

        private void subMenuTiemposEntregas_Click(object sender, EventArgs e)
        {
        
            FormTiemposEntrega te = new FormTiemposEntrega();
            this.Visible = false;
            te.ShowDialog();
            
           
        }

        private void subMenuCambiarUsuario_Click(object sender, EventArgs e)
        {
            FormLogin login = new FormLogin();
            this.Visible = false;
            login.ShowDialog();
            
        }

        private void subMenuUsuarios_Click(object sender, EventArgs e)
        {
            FormUsuarios usuarios = new FormUsuarios();
            this.Visible = false;
            usuarios.ShowDialog();            
        }


        public void mostrarMenu()
        {
            if (sistema.Usuario_loguado.Username.Equals("Admin"))
            {
                subMenuReporteCompras.Visible = false;
                subMenuReporteVentas.Visible = true;
            }
            else
            {
                subMenuReporteCompras.Visible = true;
                subMenuReporteVentas.Visible = false;
                menuItems.Visible = false;
                menuTiempos.Visible = false;
                menuUsuarios.Visible = false;
                menuGift.Visible = false;
            }

        }

        private void reporteComprasToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            FormReporteCompras repo = new FormReporteCompras();
            this.Visible = false;
            repo.ShowDialog();
            
        }

        private void subMenuReporteVentas_Click(object sender, EventArgs e)
        {
            FormReporteVentas reporte = new FormReporteVentas();
            this.Visible = false;
            reporte.ShowDialog();
            
        }

        private void salirToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            this.Close();
            sistema.OPersistente.Ip.desconectarse();
            Application.Exit();
           
            
        }

        private void giftsToolStripMenuItem_Click(object sender, EventArgs e)
        {
            FormGift fg = new FormGift();
            this.Visible = false;
            fg.ShowDialog();
            
        }

        private void FormMenu_FormClosed(object sender, FormClosedEventArgs e)
        {
            Application.Exit();
            sistema.OPersistente.Ip.desconectarse();
        }

    }
}
